﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace HA.Data
{

    /// <summary>
    /// 用于BC类型之间的帮助类，包括转换以及集合定义等内容
    /// </summary>
    public static class BCHelper
    {


        /// <summary>
        /// 返回可以用于点的SC类型
        /// </summary>
        /// <returns></returns>
        public static List<MAPSCType> GetAllPtSCTypes()
        {
            List<MAPSCType> types = new List<MAPSCType>();

            types.Add(MAPSCType.WELL);

            types.Add(MAPSCType.SPECIFIEDHEAD);
            types.Add(MAPSCType.GENERALHEAD);
            types.Add(MAPSCType.DRAIN);
            types.Add(MAPSCType.RIVER);
            types.Add(MAPSCType.SEEPAGEFACE);
          



            //加入mt3dms所包含的部分
            types.Add(MAPSCType.MASSLOADING);
            types.Add(MAPSCType.SPECIFIEDCONC);




            return types;

        }


        public static List<MAPSCType> GetAllLnSCTypes()
        {

            List<MAPSCType> types = new List<MAPSCType>();


            types.Add(MAPSCType.SPECIFIEDHEAD);

            types.Add(MAPSCType.SPECIFIEDFLOW);

            types.Add(MAPSCType.GENERALHEAD);
            types.Add(MAPSCType.DRAIN);
            types.Add(MAPSCType.RIVER);
            types.Add(MAPSCType.SEEPAGEFACE);
            types.Add(MAPSCType.BARRIER);



            //加入mt3dms所包含的部分
            types.Add(MAPSCType.MASSLOADING);
            types.Add(MAPSCType.SPECIFIEDCONC);


            return types;

 


        }



        public static List<MAPSCType> GetAllPolygonSCTypes()
        {

            List<MAPSCType> types = new List<MAPSCType>();


            types.Add(MAPSCType.SPECIFIEDHEAD);

            types.Add(MAPSCType.SPECIFIEDFLOW);

            types.Add(MAPSCType.GENERALHEAD);
            types.Add(MAPSCType.DRAIN);
            types.Add(MAPSCType.RIVER);
            types.Add(MAPSCType.SEEPAGEFACE);




            //加入mt3dms所包含的部分
            types.Add(MAPSCType.MASSLOADING);
            types.Add(MAPSCType.SPECIFIEDCONC);



            return types;




        }





        //下面定义面妆图形的有关属性信息
       



       
        /// <summary>
        /// 返回mt3d类型的面属性
        /// </summary>
        /// <returns></returns>
        public static List<MAPArealType> GetMt3dAP()
        {

            List<MAPArealType> types = new List<MAPArealType>();

            types.Add(MAPArealType.STARTINGCONCENTRATION);

            types.Add(MAPArealType.POROSITY);

            types.Add(MAPArealType.LONGDISPERSITY);

            types.Add(MAPArealType.BULKDENSITY);

            types.Add(MAPArealType.IMMOBILEPOROSITY);



            return types;





        }







    }
}
